Python的类方法

python 类内置方法

reprstr 的比较

从上图可以看出,两个方法都是倾向于字符串的处理
reprstr这两个方法都是用于显示的,str是面向用户的,而repr面向程序员。

  • 打印操作会首先尝试str和str内置函数(print运行的内部等价形式),它通常应该返回一个友好的显示。

  • repr用于所有其他的环境中:用于交互模式下提示回应以及repr函数,如果没有使用str,会使用print和str。它通常应该返回一个编码字符串,可以用来重新创建对象,或者给开发者详细的显示。

实例—一个类似字典的映射对象

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Foo:
def __init__(self,name):
self.name=name

def __getitem__(self, item):
print(self.__dict__[item])

def __setitem__(self, key, value):
print(key,value)
self.__dict__[key] = value

def __delitem__(self, key):
print('__delitem__ obj[key]时,我执行')
self.__dict__.pop(key)

def __delattr__(self, item):
print('__delattr__ obj.key时,我执行')
self.__dict__.pop(item)
  • item类的方法,都有默认返回值,如果不定义return 的,默认就是 return none
  • 使用的方式也是类似字典的形式,不再是类属性的方式,也就是不能使用.
  • 需要使用成test4['new'] = 'test555'